package paqv_vista;

import java.sql.SQLException;
import java.sql.Timestamp;
import java.util.ArrayList;
import java.util.Calendar;
import java.util.Date;
import javax.ejb.EJB;
import javax.faces.bean.ManagedBean;
import javax.faces.bean.ViewScoped;
import paq_calculo.fun_calculo;
import paq_clase_interfaz.interfaz_cronograma;
import paq_clase_interfaz.interfaz_login;
import paq_clase_interfaz.interfaz_profesor;
import paq_clase_interfaz.interfaz_timbre;
import paq_entidades.entiv_timbre;
import paq_entidades.entiv_variables;

@ManagedBean()
@ViewScoped
public class Vista_timbre extends Vista_campostxt {

    Date fecha2 = null;
    Integer di = null;
    fun_calculo fu = new fun_calculo();
    Calendar ahoraCal = Calendar.getInstance();
    entiv_variables v = new entiv_variables();
    @EJB
    private interfaz_timbre eliminar;
    @EJB
    private interfaz_timbre insertar;
    @EJB
    private interfaz_timbre actualizar;
    @EJB
    private interfaz_cronograma devolverfecha;
    @EJB
    private interfaz_profesor comboprofe;
    @EJB
    private interfaz_login devolver;

    public void insertar() {
        //txtcedula = "23123143";
        txtfechainicio = new Date();
        txtdia = fu.getDayOfTheWeek2();
        txtmes = fu.mes();
        txthorainicio = new Date();
        txthorafin = new Date();
        insertar.insertar(txtcedula, fu.formato_fecha_hora2(txthorainicio), fu.formato_fecha_hora2(txthorafin), fu.formato_fecha2(txtfechainicio), txtdia, txtmes);
    }
    public void modificar() {
        actualizar.actualizarsalida(txtcedula);
    }

    public String opciontimbre() {
        if (opcion.equals("1")) {
            insertar();
            mensaje="ingreso registrado";
        } else if (opcion.equals("2")){
            modificar();
            mensaje="salida registrada";
        }
        else
        {
            mensaje="no timbrado";
        }
        return mensaje;
    }

    public Boolean devolverfechacronograma() {
        boolean x;
        v.crs5 = devolverfecha.getdevolverfechaprofesor(txtcedula, fu.formato_fecha2(new Date()));
        if (v.crs5.size() > 0) {
            //mensaje = "fecha encontrada en:'"+ fu.formato_fecha2(new Date()) +"' sin problemas para timbrar";
            x = true;

        } else {
            // mensaje = "No puede timbrar";
            x = false;
        }
        return x;
        //return fu.formato_fecha2(new Date());
    }

    public String devolver() {
        boolean x;
        v.crs6 = devolver.getvalidar(txtcedula);
        if (v.crs6.size() > 0) {
            x = devolverfechacronograma();
            if (x == true) {
                //insertar();
               //mensaje = "ok";
            mensaje= opciontimbre();
            } else {
                mensaje = "No tiene cronograma";
            }

        } else {
            mensaje = "Error de credenciales";
        }
        return mensaje;
    }
}
